package com.ruoyi.work.service;

import java.util.List;

import com.ruoyi.common.core.domain.R;
import com.ruoyi.work.domain.JyStudentCorporation;
import com.ruoyi.work.domain.vo.BwStudentVo;
import com.ruoyi.work.domain.vo.StudentCorporationVo;
import com.ruoyi.work.domain.vo.TailAfterVo;

/**
 * 学生公司中间Service接口
 * 
 * @author ruoyi
 * @date 2024-06-06
 */
public interface IJyStudentCorporationService 
{
    /**
     * 查询学生公司中间
     * 
     * @param id 学生公司中间主键
     * @return 学生公司中间
     */
    public JyStudentCorporation selectJyStudentCorporationById(Long id);

    /**
     * 查询学生公司中间列表
     * 
     * @param jyStudentCorporation 学生公司中间
     * @return 学生公司中间集合
     */
    public List<JyStudentCorporation> selectJyStudentCorporationList(JyStudentCorporation jyStudentCorporation);

    /**
     * 新增学生公司中间
     * 
     * @param jyStudentCorporation 学生公司中间
     * @return 结果
     */
    public int insertJyStudentCorporation(JyStudentCorporation jyStudentCorporation);

    /**
     * 修改学生公司中间
     * 
     * @param bwStudentVo 学生公司中间
     * @return 结果
     */
    public R updateJyStudentCorporation(BwStudentVo bwStudentVo);

    /**
     * 批量删除学生公司中间
     * 
     * @param ids 需要删除的学生公司中间主键集合
     * @return 结果
     */
    public int deleteJyStudentCorporationByIds(Long[] ids);

    /**
     * 删除学生公司中间信息
     * 
     * @param id 学生公司中间主键
     * @return 结果
     */
    public int deleteJyStudentCorporationById(Long id);

    List<BwStudentVo> selectBwStudentInfoList(BwStudentVo bwStudentVo);

    R selectDeptList();

    R reportBack(StudentCorporationVo studentCorporationVo);

    R reportEntry(StudentCorporationVo studentCorporationVo);

    R reportDown(TailAfterVo tailAfterVo);

    R studentById(Long id);
}
